﻿using MJD.Comunes.Entidades;
using MJD.Transaccional.AccesoDatos.Fabricas;
using MJD.Transaccional.Comandos.Interfaces;

namespace MJD.Transaccional.Comandos.Implementacion.ComandosAseguradora
{
    /// <summary>
    /// Comando que inserta o modifica todos los datos de la aseguradora
    /// </summary>
    class InsertarModificarCompleto:IComando<bool>
    {
        /// <summary>datos de la aseguradora a insertar o modificar</summary>
        private readonly Aseguradora _aseguradora;


        /// <summary> Constructor de la clase </summary>
        /// <param name="aseguradora">datos de la aseguradora a insertar o modificar</param>
        public InsertarModificarCompleto(Aseguradora aseguradora)
        {
            _aseguradora = aseguradora;
        }

        #region Implementation of IComando<bool>

        /// <summary> Metodo que realiza la accion del comando </summary>
        /// <returns>true si modifico o inserto false sino</returns>
        public bool Ejecutar()
        {
            return FabricaDao.ObtenerManejador().ObtenerDaoAseguradora().AgregrarAseguradoraCompleta(_aseguradora);
        }

        #endregion
    }
}
